Weather Journal App
Project Environment Setup
| Criteria | Meet Specification |
|---|---|
|
Node and Express Environment |
Node and Express should be installed on the local machine. The project file The Express app instance should be pointed to the project folder with .html, .css, and .js files. |
|
Project Dependencies |
The ‘cors’ package should be installed in the project from the command line, required in the project file The |
|
Local Server |
Local server should be running and producing feedback to the Command Line through a working callback function. |
|
API Credentials |
Create API credentials on OpenWeatherMap.com |
APIs and Routes
| Criteria | Meet Specification |
|---|---|
|
APP API Endpoint |
There should be a JavaScript Object named |
|
Integrating OpenWeatherMap API |
The personal API Key for OpenWeatherMap API is saved in a named The API Key variable is passed as a parameter to Data is successfully returned from the external API. |
|
Return Endpoint Data GET Route I: Server Side |
There should be a GET route setup on the server side with the first argument as a string naming the route, and the second argument a callback function to return the JS object created at the top of server code. |
|
Return Endpoint Data GET Route II: Client Side |
There should be an asynchronous function to fetch the data from the app endpoint |
|
POST Route |
You should be able to add an entry to the project endpoint using a POST route setup on the server side and executed on the client side as an asynchronous function. The client side function should take two arguments, the URL to make a POST to, and an object holding the data to POST. The server side function should create a new entry in the apps endpoint (the named JS object) consisting of the data received from the client side POST. |
Dynamic UI
| Criteria | Meet Specification |
|---|---|
|
Naming HTML Inputs and Buttons For Interaction |
The The The button included in project HTML should have an |
|
Assigning Element Properties Dynamically |
The div with the
|
|
Event Listeners |
Adds an event listener to an existing HTML button from DOM using Vanilla JS. In the file |
|
Dynamically Update UI |
Sets the properties of existing HTML elements from the DOM using Vanilla JavaScript. Included in the async function to retrieve that app’s data on the client side, existing DOM elements should have their |